'''
给你一个整型数组 nums ，在数组中找出由三个数组成的最大乘积，并输出这个乘积。

1、只用考虑三个数全是正数
2、负数的个数偶数个

做法先排序：
    负数自然会被排到前面去 负负得正 拿两个出来
    直接取 后三个 
    比较哪个数最大
'''


def maximumProduct(self, nums):
    n = len(nums)
    nums.sort()
    return max(
        nums[0]*nums[1]*nums[n-1],
        nums[n-1]*nums[n-2]*nums[n-3]
    )
    
